# The Hazard Library
# Copyright (C) 2012-2025 GEM Foundation
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
TEST_1_MESH = [
    [(0.0, 0.0, 0.0), (0.0, 0.00899322029396, 6.12323399574e-17),
    (0.0, 0.0179864405879, 1.22464679915e-16),
    (0.0, 0.0269796608819, 1.83697019872e-16),
    (0.0, 0.0359728811759, 2.44929359829e-16),
    (0.00635916826875, 0.0423320485043, 1.83697019872e-16),
    (0.0127183370981, 0.0486912157934, 1.22464679915e-16),
    (0.0190775065665, 0.0550503830434, 6.12323399574e-17),
    (0.0259667166036, 0.0608311135245, -2.46519032882e-32),
    (0.0328559274138, 0.0666118439639, -6.12323399574e-17),
    (0.0397451390672, 0.0723925743614, -1.22464679915e-16)],
    [(0.00557430374083, -0.00306041556938, 0.70710678123),
    (0.00557430376276, 0.00593280468202, 0.70710678123),
    (0.00557430392202, 0.0149260249334, 0.70710678123),
    (0.00557430421862, 0.0239192451849, 0.70710678123),
    (0.00557430465255, 0.0329124654363, 0.70710678123),
    (0.011933473311, 0.0392716327345, 0.70710678123),
    (0.0182926425988, 0.0456307999936, 0.70710678123),
    (0.0246518125942, 0.0519899672135, 0.70710678123),
    (0.0315410231701, 0.0577706976673, 0.70710678123),
    (0.0384302345757, 0.0635514280792, 0.70710678123),
    (0.0453194468812, 0.0693321584494, 0.70710678123)],
    [(0.0111486075055, -0.00612083112428, 1.41421356246),
    (0.0111486075026, 0.00287238908456, 1.41421356246),
    (0.0111486077744, 0.0118656092934, 1.41421356246),
    (0.0111486083209, 0.0208588295023, 1.41421356246),
    (0.011148609142, 0.0298520497111, 1.41421356246),
    (0.0175077781572, 0.0362112169793, 1.41421356246),
    (0.0238669478703, 0.0425703842083, 1.41421356246),
    (0.0302261183597, 0.0489295513981, 1.41421356246),
    (0.0371153294442, 0.0547102818245, 1.41421356246),
    (0.0440045414153, 0.0604910122091, 1.41421356246),
    (0.0508937543429, 0.0662717425519, 1.41421356246)],
    [(0.0167229113099, -0.00918124666469, 2.12132034369),
    (0.0167229112355, -0.000188026498413, 2.12132034369),
    (0.0167229115731, 0.00880519366788, 2.12132034369),
    (0.0167229123227, 0.0177984138342, 2.12132034369),
    (0.0167229134843, 0.0267916340005, 2.12132034369),
    (0.0230820828231, 0.0331508012385, 2.12132034369),
    (0.0294412529285, 0.0395099684374, 2.12132034369),
    (0.0358004238789, 0.0458691355971, 2.12132034369),
    (0.042689635442, 0.0516498659962, 2.12132034369),
    (0.0495788479484, 0.0574305963534, 2.12132034369),
    (0.0564680614682, 0.0632113266689, 2.12132034369)],
    [(0.0222972151701, -0.0122416621906, 2.82842712492),
    (0.0222972149774, -0.0032484420669, 2.82842712492),
    (0.022297215334, 0.00574477805683, 2.82842712492),
    (0.02229721624, 0.0147379981806, 2.82842712492),
    (0.0222972176953, 0.0237312183043, 2.82842712492),
    (0.0286563873247, 0.0300903855123, 2.82842712492),
    (0.0350155577894, 0.0364495526811, 2.82842712492),
    (0.0413747291676, 0.0428087198107, 2.82842712492),
    (0.0482639411794, 0.0485894501823, 2.82842712492),
    (0.0551531541911, 0.0543701805122, 2.82842712492),
    (0.0620423682729, 0.0601509108003, 2.82842712492)],
    [(0.0278715191017, -0.0153020777021, 3.53553390615),
    (0.027871518744, -0.00630885762091, 3.53553390615),
    (0.027871519073, 0.00268436246026, 3.53553390615),
    (0.0278715200887, 0.0116775825414, 3.53553390615),
    (0.027871521791, 0.0206708026226, 3.53553390615),
    (0.0342306916779, 0.0270299698005, 3.53553390615),
    (0.0405898624687, 0.0333891369392, 3.53553390615),
    (0.0469490342419, 0.0397483040387, 3.53553390615),
    (0.0538382466722, 0.045529034383, 3.53553390615),
    (0.0607274601592, 0.0513097646855, 3.53553390615),
    (0.067616674773, 0.0570904949463, 3.53553390615)],
    [(0.0334458231209, -0.018362493199, 4.24264068738),
    (0.0334458225514, -0.00936927316043, 4.24264068738),
    (0.033445822806, -0.000376053121823, 4.24264068738),
    (0.0334458238846, 0.00861716691679, 4.24264068738),
    (0.0334458257871, 0.0176103869554, 4.24264068738),
    (0.0398049958985, 0.0239695541032, 4.24264068738),
    (0.0461641669826, 0.0303287212118, 4.24264068738),
    (0.0525233391176, 0.0366878882812, 4.24264068738),
    (0.0594125519363, 0.0424686185982, 4.24264068738),
    (0.0663017658685, 0.0482493488733, 4.24264068738),
    (0.0731909809844, 0.0540300791067, 4.24264068738)]]


TEST_2_MESH = [
    [(0.0167229113507, -0.00918124659284, 2.12132034356),
    (0.0167229117541, -0.000188026301819, 2.12132034356),
    (0.0167229121575, 0.00880519391224, 2.12132034356),
    (0.0167229125609, 0.0177984143111, 2.12132034356),
    (0.0167229129643, 0.0267916346333, 2.12132034356),
    (0.023082082083, 0.0331508004971, 2.12132034356),
    (0.0294412516492, 0.0395099663216, 2.12132034356),
    (0.0358004217413, 0.045869132107, 2.12132034356),
    (0.0426896319712, 0.0516498611333, 2.12132034356),
    (0.0495788428628, 0.0574305901179, 2.12132034356),
    (0.0564680544862, 0.0632113190606, 2.12132034356)],
    [(0.0222972152113, -0.012241662119, 2.82842712473),
    (0.0222972154964, -0.00324844187056, 2.82842712473),
    (0.0222972159189, 0.00574477830094, 2.82842712473),
    (0.0222972164786, 0.0147379986572, 2.82842712473),
    (0.0222972171758, 0.0237312189369, 2.82842712473),
    (0.028656386585, 0.0300903847705, 2.82842712473),
    (0.0350155565105, 0.036449550565, 2.82842712473),
    (0.0413747270305, 0.0428087163203, 2.82842712473),
    (0.048263937709, 0.0485894453193, 2.82842712473),
    (0.0551531491059, 0.0543701742765, 2.82842712473),
    (0.0620423612913, 0.0601509031919, 2.82842712473)],
    [(0.0278715191434, -0.0153020776307, 3.53553390591),
    (0.0278715192635, -0.00630885742481, 3.53553390591),
    (0.0278715196583, 0.00268436270412, 3.53553390591),
    (0.0278715203277, 0.0116775830178, 3.53553390591),
    (0.0278715212718, 0.020670803255, 3.53553390591),
    (0.0342306909386, 0.0270299690585, 3.53553390591),
    (0.0405898611903, 0.0333891348229, 3.53553390591),
    (0.0469490321052, 0.0397483005481, 3.53553390591),
    (0.0538382432022, 0.0455290295197, 3.53553390591),
    (0.0607274550744, 0.0513097584495, 3.53553390591),
    (0.0676166677919, 0.0570904873375, 3.53553390591)],
    [(0.033445823163, -0.0183624931279, 4.24264068708),
    (0.0334458230714, -0.00936927296458, 4.24264068708),
    (0.0334458233917, -0.000376052878211, 4.24264068708),
    (0.0334458241241, 0.00861716739293, 4.24264068708),
    (0.0334458252685, 0.0176103875875, 4.24264068708),
    (0.0398049951598, 0.023969553361, 4.24264068708),
    (0.0461641657046, 0.0303287190952, 4.24264068708),
    (0.0525233369813, 0.0366878847903, 4.24264068708),
    (0.0594125484668, 0.0424686137346, 4.24264068708),
    (0.0663017607843, 0.0482493426371, 4.24264068708),
    (0.0731909740037, 0.0540300714977, 4.24264068708)]]


TEST_4_MESH = [
    [(0.0, 0.0, 0.0), (0.0, 0.00899322029396, 6.12323399574e-17),
    (0.0, 0.0179864405879, 1.22464679915e-16),
    (0.0, 0.0269796608819, 1.83697019872e-16),
    (0.0, 0.0359728811759, 2.44929359829e-16),
    (0.00635916826875, 0.0423320485043, 1.83697019872e-16),
    (0.0127183370981, 0.0486912157934, 1.22464679915e-16),
    (0.0190775065665, 0.0550503830434, 6.12323399574e-17),
    (0.0259667166036, 0.0608311135245, -2.46519032882e-32),
    (0.0328559274138, 0.0666118439639, -6.12323399574e-17),
    (0.0397451390672, 0.0723925743614, -1.22464679915e-16)],
    [(0.0, 7.01670929853e-15, 1.0),
    (0.0, 0.00899322029399, 1.0),
    (0.0, 0.017986440588, 1.0),
    (0.0, 0.026979660882, 1.0),
    (0.0, 0.0359728811759, 1.0),
    (0.00635916826875, 0.0423320485043, 1.0),
    (0.0127183370981, 0.0486912157935, 1.0),
    (0.0190775065665, 0.0550503830434, 1.0),
    (0.0259667166036, 0.0608311135245, 1.0),
    (0.0328559274138, 0.0666118439639, 1.0),
    (0.0397451390672, 0.0723925743614, 1.0)],
    [(0.0, 7.01670929853e-15, 2.0),
    (0.0, 0.00899322029399, 2.0),
    (0.0, 0.017986440588, 2.0),
    (0.0, 0.026979660882, 2.0),
    (0.0, 0.0359728811759, 2.0),
    (0.00635916826875, 0.0423320485043, 2.0),
    (0.0127183370981, 0.0486912157935, 2.0),
    (0.0190775065665, 0.0550503830434, 2.0),
    (0.0259667166036, 0.0608311135245, 2.0),
    (0.0328559274138, 0.0666118439639, 2.0),
    (0.0397451390672, 0.0723925743614, 2.0)],
    [(0.0, 7.01670929853e-15, 3.0),
    (0.0, 0.00899322029399, 3.0),
    (0.0, 0.017986440588, 3.0),
    (0.0, 0.026979660882, 3.0),
    (0.0, 0.0359728811759, 3.0),
    (0.00635916826875, 0.0423320485043, 3.0),
    (0.0127183370981, 0.0486912157935, 3.0),
    (0.0190775065665, 0.0550503830434, 3.0),
    (0.0259667166036, 0.0608311135245, 3.0),
    (0.0328559274138, 0.0666118439639, 3.0),
    (0.0397451390672, 0.0723925743614, 3.0)],
    [(0.0, 7.01670929853e-15, 4.0),
    (0.0, 0.00899322029399, 4.0),
    (0.0, 0.017986440588, 4.0),
    (0.0, 0.026979660882, 4.0),
    (0.0, 0.0359728811759, 4.0),
    (0.00635916826875, 0.0423320485043, 4.0),
    (0.0127183370981, 0.0486912157935, 4.0),
    (0.0190775065665, 0.0550503830434, 4.0),
    (0.0259667166036, 0.0608311135245, 4.0),
    (0.0328559274138, 0.0666118439639, 4.0),
    (0.0397451390672, 0.0723925743614, 4.0)]]


TEST_5_MESH = [
    [(179.9, 7.01670929853e-15, 1.0),
    (179.90899322, 7.01725988802e-15, 1.0),
    (179.917986441, 7.0178104775e-15, 1.0),
    (179.926979661, 7.01836106697e-15, 1.0),
    (179.935972881, 7.01891165644e-15, 1.0),
    (179.944966101, 7.01946224589e-15, 1.0),
    (179.953959322, 7.02001283534e-15, 1.0),
    (179.962952542, 7.02056342479e-15, 1.0),
    (179.971945762, 7.02111401423e-15, 1.0),
    (179.980938983, 7.02166460366e-15, 1.0),
    (179.989932203, 7.02221519308e-15, 1.0),
    (179.998925423, 7.0227657825e-15, 1.0),
    (-179.992081356, 7.02331637191e-15, 1.0),
    (-179.983088136, 7.02386696131e-15, 1.0),
    (-179.974094916, 7.02441755071e-15, 1.0),
    (-179.965101696, 7.0249681401e-15, 1.0),
    (-179.956108475, 7.02551872949e-15, 1.0),
    (-179.947115255, 7.02606931886e-15, 1.0),
    (-179.938122035, 7.02661990823e-15, 1.0),
    (-179.929128814, 7.0271704976e-15, 1.0),
    (-179.920135594, 7.02772108695e-15, 1.0),
    (-179.911142374, 7.0282716763e-15, 1.0),
    (-179.902149154, 7.02882226564e-15, 1.0)],
    [(179.9, 7.01670929853e-15, 2.0),
    (179.90899322, 7.01670929853e-15, 2.0),
    (179.917986441, 7.01670929853e-15, 2.0),
    (179.926979661, 7.01670929853e-15, 2.0),
    (179.935972881, 7.01670929853e-15, 2.0),
    (179.944966101, 7.01670929853e-15, 2.0),
    (179.953959322, 7.01670929853e-15, 2.0),
    (179.962952542, 7.01670929853e-15, 2.0),
    (179.971945762, 7.01670929853e-15, 2.0),
    (179.980938983, 7.01670929853e-15, 2.0),
    (179.989932203, 7.01670929853e-15, 2.0),
    (179.998925423, 7.01670929853e-15, 2.0),
    (-179.992081356, 7.01670929853e-15, 2.0),
    (-179.983088136, 7.01670929853e-15, 2.0),
    (-179.974094916, 7.01670929853e-15, 2.0),
    (-179.965101696, 7.01670929853e-15, 2.0),
    (-179.956108475, 7.01670929853e-15, 2.0),
    (-179.947115255, 7.01670929853e-15, 2.0),
    (-179.938122035, 7.01670929853e-15, 2.0),
    (-179.929128814, 7.01670929853e-15, 2.0),
    (-179.920135594, 7.01670929853e-15, 2.0),
    (-179.911142374, 7.01670929853e-15, 2.0),
    (-179.902149154, 7.01670929853e-15, 2.0)],
    [(179.9, 7.01670929853e-15, 3.0),
    (179.90899322, 7.01670929853e-15, 3.0),
    (179.917986441, 7.01670929853e-15, 3.0),
    (179.926979661, 7.01670929853e-15, 3.0),
    (179.935972881, 7.01670929853e-15, 3.0),
    (179.944966101, 7.01670929853e-15, 3.0),
    (179.953959322, 7.01670929853e-15, 3.0),
    (179.962952542, 7.01670929853e-15, 3.0),
    (179.971945762, 7.01670929853e-15, 3.0),
    (179.980938983, 7.01670929853e-15, 3.0),
    (179.989932203, 7.01670929853e-15, 3.0),
    (179.998925423, 7.01670929853e-15, 3.0),
    (-179.992081356, 7.01670929853e-15, 3.0),
    (-179.983088136, 7.01670929853e-15, 3.0),
    (-179.974094916, 7.01670929853e-15, 3.0),
    (-179.965101696, 7.01670929853e-15, 3.0),
    (-179.956108475, 7.01670929853e-15, 3.0),
    (-179.947115255, 7.01670929853e-15, 3.0),
    (-179.938122035, 7.01670929853e-15, 3.0),
    (-179.929128814, 7.01670929853e-15, 3.0),
    (-179.920135594, 7.01670929853e-15, 3.0),
    (-179.911142374, 7.01670929853e-15, 3.0),
    (-179.902149154, 7.01670929853e-15, 3.0)],
    [(179.9, 7.01670929853e-15, 4.0),
    (179.90899322, 7.01670929853e-15, 4.0),
    (179.917986441, 7.01670929853e-15, 4.0),
    (179.926979661, 7.01670929853e-15, 4.0),
    (179.935972881, 7.01670929853e-15, 4.0),
    (179.944966101, 7.01670929853e-15, 4.0),
    (179.953959322, 7.01670929853e-15, 4.0),
    (179.962952542, 7.01670929853e-15, 4.0),
    (179.971945762, 7.01670929853e-15, 4.0),
    (179.980938983, 7.01670929853e-15, 4.0),
    (179.989932203, 7.01670929853e-15, 4.0),
    (179.998925423, 7.01670929853e-15, 4.0),
    (-179.992081356, 7.01670929853e-15, 4.0),
    (-179.983088136, 7.01670929853e-15, 4.0),
    (-179.974094916, 7.01670929853e-15, 4.0),
    (-179.965101696, 7.01670929853e-15, 4.0),
    (-179.956108475, 7.01670929853e-15, 4.0),
    (-179.947115255, 7.01670929853e-15, 4.0),
    (-179.938122035, 7.01670929853e-15, 4.0),
    (-179.929128814, 7.01670929853e-15, 4.0),
    (-179.920135594, 7.01670929853e-15, 4.0),
    (-179.911142374, 7.01670929853e-15, 4.0),
    (-179.902149154, 7.01670929853e-15, 4.0)],
    [(179.9, 7.01670929853e-15, 5.0),
    (179.90899322, 7.01670929853e-15, 5.0),
    (179.917986441, 7.01670929853e-15, 5.0),
    (179.926979661, 7.01670929853e-15, 5.0),
    (179.935972881, 7.01670929853e-15, 5.0),
    (179.944966101, 7.01670929853e-15, 5.0),
    (179.953959322, 7.01670929853e-15, 5.0),
    (179.962952542, 7.01670929853e-15, 5.0),
    (179.971945762, 7.01670929853e-15, 5.0),
    (179.980938983, 7.01670929853e-15, 5.0),
    (179.989932203, 7.01670929853e-15, 5.0),
    (179.998925423, 7.01670929853e-15, 5.0),
    (-179.992081356, 7.01670929853e-15, 5.0),
    (-179.983088136, 7.01670929853e-15, 5.0),
    (-179.974094916, 7.01670929853e-15, 5.0),
    (-179.965101696, 7.01670929853e-15, 5.0),
    (-179.956108475, 7.01670929853e-15, 5.0),
    (-179.947115255, 7.01670929853e-15, 5.0),
    (-179.938122035, 7.01670929853e-15, 5.0),
    (-179.929128814, 7.01670929853e-15, 5.0),
    (-179.920135594, 7.01670929853e-15, 5.0),
    (-179.911142374, 7.01670929853e-15, 5.0),
    (-179.902149154, 7.01670929853e-15, 5.0)],
    [(179.9, 7.01670929853e-15, 6.0),
    (179.90899322, 7.01670929853e-15, 6.0),
    (179.917986441, 7.01670929853e-15, 6.0),
    (179.926979661, 7.01670929853e-15, 6.0),
    (179.935972881, 7.01670929853e-15, 6.0),
    (179.944966101, 7.01670929853e-15, 6.0),
    (179.953959322, 7.01670929853e-15, 6.0),
    (179.962952542, 7.01670929853e-15, 6.0),
    (179.971945762, 7.01670929853e-15, 6.0),
    (179.980938983, 7.01670929853e-15, 6.0),
    (179.989932203, 7.01670929853e-15, 6.0),
    (179.998925423, 7.01670929853e-15, 6.0),
    (-179.992081356, 7.01670929853e-15, 6.0),
    (-179.983088136, 7.01670929853e-15, 6.0),
    (-179.974094916, 7.01670929853e-15, 6.0),
    (-179.965101696, 7.01670929853e-15, 6.0),
    (-179.956108475, 7.01670929853e-15, 6.0),
    (-179.947115255, 7.01670929853e-15, 6.0),
    (-179.938122035, 7.01670929853e-15, 6.0),
    (-179.929128814, 7.01670929853e-15, 6.0),
    (-179.920135594, 7.01670929853e-15, 6.0),
    (-179.911142374, 7.01670929853e-15, 6.0),
    (-179.902149154, 7.01670929853e-15, 6.0)]]


TEST_TOPO_MESH = [
    [(0.0, 0.0, -2.0),
    (0.0, 0.00899322029396, -2.0),
    (0.0, 0.0179864405879, -2.0),
    (0.0, 0.0269796608819, -2.0),
    (0.0, 0.0359728811759, -2.0),
    (0.00635916826875, 0.0423320485043, -2.0),
    (0.0127183370981, 0.0486912157934, -2.0),
    (0.0190775065665, 0.0550503830434, -2.0),
    (0.0259667166036, 0.0608311135245, -2.0),
    (0.0328559274138, 0.0666118439639, -2.0),
    (0.0397451390672, 0.0723925743614, -2.0)],
    [(0.0, 7.01670929853e-15, -1.0),
    (0.0, 0.00899322029399, -1.0),
    (0.0, 0.017986440588, -1.0),
    (0.0, 0.026979660882, -1.0),
    (0.0, 0.0359728811759, -1.0),
    (0.00635916826875, 0.0423320485043, -1.0),
    (0.0127183370981, 0.0486912157935, -1.0),
    (0.0190775065665, 0.0550503830434, -1.0),
    (0.0259667166036, 0.0608311135245, -1.0),
    (0.0328559274138, 0.0666118439639, -1.0),
    (0.0397451390672, 0.0723925743614, -1.0)],
    [(0.0, 7.01670929853e-15, 0.0),
    (0.0, 0.00899322029399, 0.0),
    (0.0, 0.017986440588, 0.0),
    (0.0, 0.026979660882, 0.0),
    (0.0, 0.0359728811759, 0.0),
    (0.00635916826875, 0.0423320485043, 0.0),
    (0.0127183370981, 0.0486912157935, 0.0),
    (0.0190775065665, 0.0550503830434, 0.0),
    (0.0259667166036, 0.0608311135245, 0.0),
    (0.0328559274138, 0.0666118439639, 0.0),
    (0.0397451390672, 0.0723925743614, 0.0)],
    [(0.0, 7.01670929853e-15, 1.0),
    (0.0, 0.00899322029399, 1.0),
    (0.0, 0.017986440588, 1.0),
    (0.0, 0.026979660882, 1.0),
    (0.0, 0.0359728811759, 1.0),
    (0.00635916826875, 0.0423320485043, 1.0),
    (0.0127183370981, 0.0486912157935, 1.0),
    (0.0190775065665, 0.0550503830434, 1.0),
    (0.0259667166036, 0.0608311135245, 1.0),
    (0.0328559274138, 0.0666118439639, 1.0),
    (0.0397451390672, 0.0723925743614, 1.0)],
    [(0.0, 7.01670929853e-15, 2.0),
    (0.0, 0.00899322029399, 2.0),
    (0.0, 0.017986440588, 2.0),
    (0.0, 0.026979660882, 2.0),
    (0.0, 0.0359728811759, 2.0),
    (0.00635916826875, 0.0423320485043, 2.0),
    (0.0127183370981, 0.0486912157935, 2.0),
    (0.0190775065665, 0.0550503830434, 2.0),
    (0.0259667166036, 0.0608311135245, 2.0),
    (0.0328559274138, 0.0666118439639, 2.0),
    (0.0397451390672, 0.0723925743614, 2.0)]]
